
 <link rel="stylesheet" href="/domain_check/static/layui/css/layui.css">
<div class="bt-form">
    <div class="bt-w-main">
        <!--菜单部分-->
        <div class="bt-w-menu">
            <p  class="bgw"  onclick="demo.get_domain_list()">域名解析查询</p>
            <!-- <p    onclick="demo.get_domain_list1()">域名备案查询</p>-->
            <p  onclick="demo.update_log()">升级日志</p>
            
            <!--<p  onclick="demo.get_logs()">操作日志</p>-->
            
             <p  onclick="demo.about_me()">关于我</p>
           
        </div>
        <!--内容部分-->
        <div class="bt-w-con pd15">
            <div class="plugin_body">

            </div>
        </div>
    </div>
</div>






<div link="update_log" style="display:none;">    
 <div class="content" style="margin-top:40px;">
 <ul class="layui-timeline">

  <li class="layui-timeline-item">
    <i class="layui-icon layui-timeline-axis">&#xe63f;</i>
    <div class="layui-timeline-content layui-text">
      <h3 class="layui-timeline-title">2021年12月31日</h3>
      <p>
        v1.0发布
        <br>1.查询当前服务器站点绑定所有域名指向的ip地址是否是当前服务器。
        <br>2.查询当前服务器某一个站点下面所有域名指向的ip是否当前服务器。
        <br>3.如果域名指向不是当前服务器显示出来指向的服务器的IP地址（如果使用了cdn，或者解析到多个地址，本工具只能显示一个ip，仅供参考）。
      </p>
    </div>
  </li>
  <li class="layui-timeline-item">
    <i class="layui-icon layui-timeline-axis">&#xe63f;</i>
    <div class="layui-timeline-content layui-text">
      <div class="layui-timeline-title">过去</div>
    </div>
  </li>
</ul>
</div>
</div>




 <script src="/domain_check/static/layui/layui.js"></script>


<script type="text/javascript">

    //定义窗口尺寸
    $('.layui-layer-page').css({ 'width': '900px' });

    //左测菜单切换效果
    $(".bt-w-menu p").click(function () {
        $(this).addClass('bgw').siblings().removeClass('bgw')
    });

    /**
     * 插件交互对象
     * 您的所有JS代码可以写在里面
     * 若不习惯JS的面向对象编程，可删除此对象，使用传统函数化的方式编写
     * */
    var demo = {
        //构造概览内容
        get_index: function () {
            $('.plugin_body').html("<h1 style='text-align:center;margin-top:30%;'>这是一个示例插件!</h1>");
        },
        about_me: function () {
            $('.plugin_body').html("<h1 style='text-align:center;margin-top:30%;font-size:25px;'>联系QQ:613154514</h1>");
        },
        update_log: function (){
                   var html=$("[link=update_log]").html();
                   $('.plugin_body').html(html);
        },
        /**
         * 获取面板日志
         * @param p 被获取的分页
         */
        get_logs : function (p) {
            if (p == undefined) p = 1;
            request_plugin('domain_check', 'get_logs', { p: p, callback: 'demo.get_logs' }, function (rdata) {
         
                var log_body = '';
                for (var i = 0; i < rdata.data.length; i++) {
                    log_body += '<tr><td>' + rdata.data[i].addtime + '</td><td><span title="' + rdata.data[i].log + '">' + rdata.data[i].log + '</span></td></tr>'
                }

                var my_body = '<div class="demo-table"><div class="divtable">'
                            +'<table class="table table-hover">'
                                +'<thead>'
                                    +'<tr><th width="150">时间</th><th>详情</th></tr>'
                                +'</thead>'
                                +'<tbody>'+ log_body + '</tbody>'
                            +'</table>'
                    + '</div><div class="page" style="margin-top:15px">' + rdata.page + '</div</div>';

                $('.plugin_body').html(my_body);
            });
        },
           
          /**
         * 获取域名列表new
         */
        get_domain_list : function (p) {
            //loading层
            var index = layer.load(1, {
                    shade: [0.1,'#fff'] //0.1透明度的白色背景
            });            
            
            var pid=$("[name=pid]").val();

            $('.plugin_body').html("");
            
            request_plugin('domain_check', 'get_domain_list', {callback: 'demo.get_domain_list',pid:pid}, function (rdata) {
                //关闭加载层
                layer.close(index);   
                var  new_body=''
                var  new_select='<option value="-1">全部</option>';
                

                
                if( typeof(rdata.data1)=='undefined'){
                    return
                }
                
                
                 for (var i = 0; i < rdata.data1.length; i++) {
                    //发送ajax请求获取域名指向的ip地址
                    var name= rdata.data1[i].name;
                    var ps= rdata.data1[i].ps;
                    var id=rdata.data1[i].id;
                    //追加内容
                    if( rdata.pid==id){
                       new_select += '<option  selected="selected"   value="'+id+'">'+ps+name+'</option>'  
                    }else {
                        new_select += '<option    value="'+id+'">'+ps+'['+name+']</option>'  
                    }
                    
          

                }               
                
                var my_body = '<div class="demo-table" style="display:flex;flex-direction: column;">'
                   +' <div class="divtable" style="display:flex;flex-direction: row;justify-content:space-around;"  >'
     +'<div class="layui-form-item"  >'
      +'<label class="layui-form-label">站点：</label>'
     +'<div class="layui-input-block" >'
      +'<select  style="height:36px;line-height:36px;" name="pid"   >'+new_select+'</select>'
    +'</div></div>'
       +'<div class="layui-form-item">'
     +'<div class="layui-input-block">'
       +'<button class="layui-btn"  onclick= "demo.get_domain_list();">查询</button>'
     +'</div>'
   +'</div></div>'

            
                            +'<table class="layui-table" style="overflow-y:scroll;" >'
                                +'<thead>'
                                    +'<tr><th width="150">域名</th><th>解析到的ip地址</th><th>解析到当前服务器?</th></tr>'
                                +'</thead>'
                                +'<tbody>'+ new_body + '</tbody>'
                            +'</table>'
                    + '</div><div class="page" style="margin-top:15px">' + rdata.page + '</div></div>';

                $('.plugin_body').html(my_body);   

                
                for (var i = 0; i < rdata.data.length; i++) {
                    
                    //发送ajax请求获取域名指向的ip地址
                    var name= rdata.data[i].name;
                    var port= rdata.data[i].port;
                    var id=rdata.data[i].id;
                    //追加内容
                     new_body = '<tr  domain='+name+'><td>' +name+':'+port+ '</td><td>load...</td><td><img src="/domain_check/static/loading.gif" link="domain_check_img"  width=20px height=20px></td></tr>'
                     $(".demo-table tbody").append(new_body); 

                }
  
                //jquery找到tr然后each发送请求
                 $("tbody tr").each(function(){
                     var obj=$(this);
                     var name=obj.attr("domain");
                     var status="";
                    $.post("http://duankou.wlphp.com/bt_api.php",{i:name},function (ip){
                          if(ip==rdata.server_ip){
                              status=1;
                          }else{
                              status=0;
                          }
                         obj.find("td").eq(1).text(ip)
                         obj.find("[link=domain_check_img]").attr("src","/domain_check/static/"+status+".png")
                          
                    },"text");                       
                });   
  
  
  

            });
        },
                  /**
         * 获取域名列表new
         */
        get_domain_list1 : function (p) {
            //loading层
            var index = layer.load(1, {
                    shade: [0.1,'#fff'] //0.1透明度的白色背景
            });            
            
            var pid=$("[name=pid]").val();

            $('.plugin_body').html("");
            
            request_plugin('domain_check', 'get_domain_list1', {callback: 'demo.get_domain_list1',pid:pid}, function (rdata) {
                //关闭加载层
                layer.close(index);   
                var  new_body=''
                var  new_select='<option value="-1">全部</option>';
                
                 for (var i = 0; i < rdata.data1.length; i++) {
                    //发送ajax请求获取域名指向的ip地址
                    var name= rdata.data1[i].name;
                    var ps= rdata.data1[i].ps;
                    var id=rdata.data1[i].id;
                    //追加内容
                    if( rdata.pid==id){
                       new_select += '<option  selected="selected"   value="'+id+'">'+ps+name+'</option>'  
                    }else {
                        new_select += '<option    value="'+id+'">'+ps+'['+name+']</option>'  
                    }
                    
          

                }               
                
                var my_body = '<div class="demo-table" style="display:flex;flex-direction: column;">'
                   +' <div class="divtable" style="display:flex;flex-direction: row;justify-content:space-around;"  >'
     +'<div class="layui-form-item"  >'
      +'<label class="layui-form-label">站点：</label>'
     +'<div class="layui-input-block" >'
      +'<select  style="height:36px;line-height:36px;" name="pid"   >'+new_select+'</select>'
    +'</div></div>'
       +'<div class="layui-form-item">'
     +'<div class="layui-input-block">'
       +'<button class="layui-btn"  onclick= "demo.get_domain_list1();">查询</button>'
     +'</div>'
   +'</div></div>'

            
                            +'<table class="layui-table" style="overflow-y:scroll;" >'
                                +'<thead>'
                                    +'<tr><th width="150">域名</th><th>备案号</th><th>单位名称</th></tr>'
                                +'</thead>'
                                +'<tbody>'+ new_body + '</tbody>'
                            +'</table>'
                    + '</div><div class="page" style="margin-top:15px">' + rdata.page + '</div></div>';

                $('.plugin_body').html(my_body);   

                
                for (var i = 0; i < rdata.data.length; i++) {
                    
                    //发送ajax请求获取域名指向的ip地址
                    var name= rdata.data[i].name;
                    var port= rdata.data[i].port;
                    var id=rdata.data[i].id;
                    //追加内容
                     new_body = '<tr  domain='+name+'><td>' +name+':'+port+ '</td><td>load...</td><td>load...</td></tr>'
                     $(".demo-table tbody").append(new_body); 

                }
  
                //jquery找到tr然后each发送请求
                 $("tbody tr").each(function(){
                     var obj=$(this);
                     var name=obj.attr("domain");
                     var status="";
                    $.post("http://icp.wlphp.com/api.php?act=api1",{domain:name},function (rt){

                         obj.find("td").eq(1).text(rt.icp)
                         obj.find("td").eq(2).text(rt.name)
                          
                    },"json");                       
                });   
  
  
  

            });
        }

    }

    /**
     * 发送请求到插件
     * 注意：除非你知道如何自己构造正确访问插件的ajax，否则建议您使用此方法与后端进行通信
     * @param plugin_name    插件名称 如：demo
     * @param function_name  要访问的方法名，如：get_logs
     * @param args           传到插件方法中的参数 请传入数组，示例：{p:1,rows:10,callback:"demo.get_logs"}
     * @param callback       请传入处理函数，响应内容将传入到第一个参数中
     */
    function request_plugin(plugin_name, function_name, args, callback, timeout) {
        if (!timeout) timeout = 3600;
        $.ajax({
            type:'POST',
            url: '/plugin?action=a&s=' + function_name + '&name=' + plugin_name,
            data: args,
            timeout:timeout,
            success: function(rdata) {
                if (!callback) {
                    layer.msg(rdata.msg, { icon: rdata.status ? 1 : 2 });
                    return;
                }
                return callback(rdata);
            },
            error: function(ex) {
                if (!callback) {
                    layer.msg('请求过程发现错误!', { icon: 2 });
                    return;
                }
                return callback(ex);
            }
        });
    }



    //第一次打开窗口时调用
    demo.get_domain_list();

</script>

